package cn.tx.demo;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;

/**
 * 学生管理系统主程序
 */
public class StuMain {

    public static void main(String[] args) {

        System.out.println("-- 欢迎您使用学生管理系统 --");

        // 创建学生对象
        Student student = new Student();

        // 扫描器对象，可以在控制台上完成用户输入数据的获取
        Scanner s = new Scanner(System.in);

        // ----------------------------学号---------------------------------
        System.out.println("请输入学号");
        // 通过扫描器对象获取到客户输入的内容
        int id = s.nextInt();

        // 可以给学生对象的属性赋值
        student.id = id;

        // ----------------------------姓名---------------------------------
        System.out.println("请输入姓名");
        // 获取姓名
        String name = s.next();
        //给学生赋值
        student.username = name;

        // ----------------------------性别---------------------------------
        System.out.println("请输入性别");
        String sex = s.next();
        student.sex = sex;

        // ----------------------------数学---------------------------------
        System.out.println("请输入数学成绩");
        int math = s.nextInt();
        student.math = math;

        // ----------------------------语文---------------------------------
        System.out.println("请输入语文成绩");
        int chinese = s.nextInt();
        student.chinese = chinese;

        // ----------------------------英语---------------------------------
        System.out.println("请输入英语成绩");
        int english = s.nextInt();
        student.english = english;

        // 把学生的数据，写入到txt文档中
        writeStudent(student);
    }

    /**
     * 调用该方法，把student数据写入到txt文档中
     * @param student
     */
    public static void writeStudent(Student student){
        // 使用IO的知识
        // 创建文件对象
        File file = new File("stu.txt");

        BufferedWriter bw = null;
        try {
            // 创建输出流  alt + 回车
            bw = new BufferedWriter(new FileWriter(file));

            // 写入内容
            bw.write("学号\t姓名\t性别\t数学\t语文\t英语");

            // 先换行，再写入
            bw.newLine();//换行

            // 写入学生的数据
            bw.write(student.id + "\t\t" + student.username + "\t" + student.sex + "\t\t" +
                    student.math + "\t\t" + student.chinese + "\t\t" + student.english);

            bw.newLine();

            // 刷新
            bw.flush();

        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            if (bw != null) {
                try {
                    bw.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
